Spline interpolator with interpolating potentiometers



R. W. TRIPP Jan. 21, 1969 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 INVENTOR.

w R T W T R E B m ATTORNEY- R. W. TRIPP Jan. 21, 1969 SPLINE INTBRPOLATUR WITH INTERPOLATING POTENTIOMETEHS Sheet a of 16 Filed Dec.

ROBERT W. TRlPP,

INVEJVTOR.

A TI'ORWEK Jan. 21, 1969 R. w. TRIPP 3,423,656

SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 Sheet 3 of 16 AAX gmv J HonMAY AAY 6mm (funA mx Fa. 7b.

P 3 AX 0 AY 0 Ax R or R X R ROBERT W. TRIPP,

INVEN TOR.

A 7' TORNEK Jan. 21, 1969 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 (fay R- W. TRIPP Sheet 4 any/6 TOOL PER/PHEPV TOOL Cf/VTEA INVENTOR.

P085? 7' W TP/PP A TTOPNEX Jan. 21, 1969 R. w. TRIPP 3,423,656

SPLINE INTERFOLATOR WITH INTERPOLATING POTEN'IIOME'I'ERS Filed Dec. 6, 1965 Sheet Q: of 16 cue v5 A COMPU r52 cf: gm ax+mx+x AMI? TOOL 240/0 4 /0 FEED 5521 0 AMP.

(j l j. INVENTOR.

POBE/PT W TIP/PP 4 TTOPNEX Jan. 21, 1969 R. w. TRIPP 3,423,656

SPLINE INTERPOLATOR wm: INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 Sheet 7 of 16 INVENTOR.

(76:7. EOBEPT m TP/PP BY W A T TOE/V5 1969 R. w. TRIPP 3,423,656

SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 Sheet Q of 16 A) :AX

//V7'EE --d5/ POLA T02 SEQUENCE CONTPOL 275 i 55 E I 'F L 52 1407- 40/ i l J r I ...J 4* TACH.

l i I 4- BEAKE J 4 AND 402 w I FD BATE I 3 5521/0 Mame &

OY Z INVENTOR.

j 205527 14 Temp TO ENE)! R. W. TRIPP Jan. 21, 1969 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Sheet Filed Dec.

\ INVENTOR. B05587" I44 TRIPP I I I ATrOEA/EK Jan. 21, 1969 R. w. TRIPP 3,423,656

SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec. 6, 1963 Sheet 0 of 16 INVENTOR. 1905537 M4 TP/PP R. W. TRIPP Jan. 21, 1969 SPLINE INTEHPOLATOR WITH INTERPOLATING POTENTIOMETERS Sheet Filed Dec.

INVENTOR. KOBE/Q7 l L TE/PP MQ N w I I I. Qm

A TTOEA/EX R. W. TRIPP Jan. 21, 1969 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Filed Dec.

N60 MG \\\W TE m7 m mww 7 a m g 2 3L Q3 4 Q 5 N0 mu 8 no mo me mow r lilL 3m .88 oo e m \Q m P l 3h n 9 N 99 I. EVNRDQS SW8. \wv

ATTOPME)! R. W. TRIPP Jan. 21, 1969 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Sheet Filed Dec.

Tim

INVEBEOR. 05527 W T IPP A TTOENEK R. W. TRIPP Jan. 21, 1969 Sheet WWQU u n a o o o u l o o a n a a o o 0 o o a o 1 L o i 55 HI \SWAQ IOli'OQOOOOOOOIOiOQIQQDO.

IN V E NTOR. P055? 7 14/. TP/PP ATTOE/VE).

R. W. TRIPP Jan. 21, 1969 PLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Sheet Filed Dec.

WMIOZ. Z- waodm q H) (SBHONI NI) SlNlOd N33M.L38 BONVLSIO ROBERT w. TR|PP,

INVENTOR.

ATTOR/VEK R. W. TRIPP Jan. 21, 1969 SFLINE INTERPOLATOR WITH INTERPGLATING POTENTIOMETERS Sheet 6 of 16 Filed Dec.

Z T 2 U P T U Q 6 a 4 a i l 2 2 2 2 2 M0 2 Q EL 1 ELWEL GPLMKL AEFYWL 9 9 9 9 9 9 9 X M X X X X X X 2 5 8 4 2 mm X 4 2 .m 2 W 6 3 8 8 9 8 8 W. 9 9

ROBERT W. TRIPP,

INVENTOR.

ATTOPNE'K United States Patent 3,423,656 SPLINE INTERPOLATOR WITH INTERPOLATING POTENTIOMETERS Robert W. Tripp, Eastchester, N.Y., assignor to Inductosyn Corporation, Carson City, Nev., a corporation of Nevada Filed Dec. 6, 1963, Ser. No. 328,542 US. Cl. 31818 27 Claims Int. Cl. H02p 7/68 ABSTRACT OF THE DISCLOSURE The invention provides a generator of analog signals representative of a curve comprising digital input of starting coordinates of curve segment, digital'to-analog conversion means for supplying analog signals representative of the starting coordinates, differential means for modifying the analog signals to represent a continuous set of points along the curve segment, each of the differential means having a shaft input which is servo-controlled by one or more analog signals, one of the last mentioned analog signals for each of the servos being derived from the swinger of a potentiometer. The binary gear mechanisms 41 and 42 of Patent No. 2,902,887, Sept. 8, 1959 are eliminated and replaced by linear interpolating potentiometers.

The present invention relates to a Spline Interpolator with Interpolating Potentiometers, and is an improvement in the Interpolating System for Automatic Machine Tool Control described and claimed in application Ser. No. 622,397, filed Nov. 15, 1956, and in three divisions thereof, now patents as follows:

Patent No. 3,058,657, Oct. 16, 1962, Variable Speed Drive Interpolation System for Automatic Machine Control, hereafter referred to as Case A; Patent No. 2,902,- 887, Sept. 8, 1959, Binary Gear Device, hereafter referred to as Case B; and Patent No. 3,066,868, Dec. 4, 1962, Interpolation Computing System for Automatic Tool Control, hereafter referred to as Case C. These patents and others referred to herein are assigned to the assignee of the present application.

In particular, the invention relates to a variable speed drive interpolation system for automatic machine control which will accept input data in digital form and control the motion of a tool relatively to a Work piece along a straight path, or along a continuous curve instead of generating straight line segmental approximations as heretofore proposed, for example in the M.I.T. milling machine control. The tool may be either the cutting tool of a milling machine, lathe, profiler or the like, or it may be the scriber or stylus of a drafting or engraving machine for generating curves.

The objects of the present invention include the features of an improved variable speed drive for reducing the amount of input data required, eliminating much of the effort required for programming the portion of the computation carried out on a digital computer, and resolving the instruction to the machine elements into a plurality of grades of increments of which the fine increment is preferably handled by a highly accurate position-measuring transformer such as the Inductosyn as described in further detail later.

As compared to Cases A, B and C, an object of the invention is to simplify the apparatus required, avoid use of mechanical devices for performing mathematical operations, and provide apparatus wherein the correctness of the tool path is inherently checked, while generating or machining a continuous curve. This is accomplished by generating the curve by an interpolation method in which the curve is fitted between point pairs and goes through 3,423,656 Patented Jan. 21, 1969 each point without errors of integration. The accuracy of the approximation to a spline fit depends upon the separation of the points and upon the nature of the curve as explained in further detail later. The amount of data required according to the invention can be reduced by se lecting the distance between data points with due regard to the required curve shape and the permissible error. The use of the variable speed drive of this invention also makes it possible to maintain a constant cutting speed even though each cycle of the feed rate includes point pairs having dilferent separations.

It is possible to obtain the required machine input data with certain relatively simple arithmetical operations. The specification develops the required mathematical equations. The only original data needed for the evaluation are the X and Y coordinates of a suitable number of points. When the equation of the curve is known, it is a very simple matter to compute the necessary input data to the machine, as will be hereinafter explained.

A particular advantage of the invention is that the machine can be stopped at any point of its sequence and be started again without loss of accuracy.

According to the invention, a curve is divided into segments, and the coordinates of each segment are taken as the sum of the coordinates of points along the chord between the point pairs for each segment and the distance from the chord to the curve, measured perpendicular to the chord. The invention is useful for continuously computing this sum in analog form from data of the segment and the chord and data of the required interpolation constants. A further object of the invention is to provide a variable speed drive useful in connection with the steps of continuously computing from such data the lengths of the perpendicular from the chord to the curve, resolving such perpendicular values into their components along the X and Y axes, adding such components to the corresponding components of the chord along such axes, and controlling the feed rates of the machine elements along those axes accordingly.

While the variable speed drive of this invention may be used for generating a straight line, or a succession of straight lines having different slopes, the invention is particularly useful for the generation of complex curves by generating successive curved segments. This involves the chord-to-tangent angle and the length of the chord for each segment and for the generation of continuous curves, it also involves preparing the instruction for the next segment while maintaining the instruction for a given segment with a quick shift from one instruction to the next. It is a particular object of the present invention to provide a variable speed drive useful for those purposes. Further features of the invention are to provide for adjusting the position of the required curve before starting, to provide for a separate introduction of cutter offset instruction, to provide a constant cutting rate independent of the length of each successive segment of the curve to be cut. A further feature is to provide for the generation of corners including means for stopping the feed rate drive until the new slope angle is established, while maintaining the cutter radius instruction active so that at the corner the machine will describe an arcuate path having a radius equal to the cutter radius whereby the cutter always remains in contact with the corner being cut. Provision is also made for zero offset.

Cutter ofiset.-Provision is made for computing the absolute value of the slope angle (11 of the curve from the input values of the increments AX and AY, an adjustable tool radius input R being provided to resolve the tool radius R into the increments X and Y for addition to the other instructions pertinent to the X and Y axes. This is broadly described and claimed in US. application Ser. No. 561,769 filed Jan. 27, 1956 for Tool Radius Cor J rection Computer, as applied to two axes, and is described and claimed as applied to three axes in Ser. No. 608,357 filed Sept. 6, 1956 for Three Dimensional Tool Radius Correction Computer. Use of this feature permits various cutters to be employed without altering the input program.

Zero 0flser.Provisi0n is made for locating the program zero as described with respect to the machine coordinates so that the part may be programmed in advance and the part located on the machine subsequently. The diflerence between the machine coordinate Zero and the part coordinate zero is zero otiset. This is described and claimed in U.S. application Ser. No. 638,722, now Patent No. 2,950,427, filed Feb. 7, 1957 for Zero Offset for Machine Tool Control.

Scquenca-Concerning the sequence of operation in relation to the program advance, the objects of the inven tion are to hold the inputs in the selected state from one command to another, change from one state to another at exactly the position desired, hold the digital input for a short time until the equipment is ready to accept it, hold the inputs energized independently of the storage circuits, utilize the storage circuits to hold the next data while current data is being used, and to provide a circuit which makes it possible to read" the punched card or tape at a relatively slow rate and during times when the previous information is being held on the operating coils, while making it possible to change the state of the operating coils, and obtain the shaft speed called for by the input, very rapidly and at an accurately chosen time or under accurately chosen conditions.

The curve is divided into a plurality of successive segments, the length of these segments being chosen with due regard for the required accuracy as explained later.

In accordance with the present invention, each successive segment of a curve is generated from the values of (a) the differences between the coordinates of the end points of the segment, (1)) the angle between the chord and the tangent at the cutting point, and (c) the departure H of the curve from the chord, measured perpendicularly to the chord from the cutting point on the curve. It is shown that the value of H is given by the equation:

and that the value of the angle A is given by the equation:

"a iflll)\g s-is (l D2)+C [1 [2) In the above Equations 1 and 2,

p Starting interpolation angle of segment a :Ending interpolation angle of segment, b Nl-l+ fiN a Ba= N-;-t+l 1v) where 5 is the angle between the chord and the tangent to the curve at the first data point N of the curve segment and a is the angle between the chord and the tangent to the curve at the second data point N+1 of the curve segment.

D:Chord distance between adjacent data points. S:Distance measured along the chord to a perpendicular from the chord to the cutting point on the curve.

It is further shown that instantaneous values of the coordinates of points X, Y, on the path to be followed by the center of the cutter are given by the following equations which appear later as Equations 62 and 63:

In Equations 62 and 63,

)( Abscissa of the first data point N nXz Difi erence in abscissae between adjacent data points X :X component of cutter radius Y Ordinate of the first data point aY:Ditference in ordinates between adjacent data points Y Y component of cutter radius It is also shown that the value of tan A as given in Equation 2 is taken into account in computing the cutter olfset components X and Y A further feature of the invention is to provide a method of computing the necessary input values of a, p, AX and AY in digital form and continuously computing signal values of H (Equation 1) and and also tan x (Equation 2) and from these signal values to continuously compute the terms included in Equations 62 and 63 and add the terms for each equation as indicated, and control the feed rate of the machine elements on coordinate X and Y axes accordingly.

It is shown that in the case where the equation of the curve is known, the values of m and 13 are readily determined, whereas, if the equation of the curve is not known, the values of a and {3 may be computed by analogy to a spline fit, from data of the points of preceding and succeeding segments of the curve.

The above objects are accomplished by employing a precision position measuring transformer to attain high precision, and by employing analog computers to provide continuous data of position, to drive servos which posi tion the machine element relatively to the work piece to be cut.

While the invention will be described with reference to two orthogonal axes, referred to as the X and Y axes, with the Z axis used for positional control only, it will be apparent that the interpolation method and means herein described may be extended to apply also to a third axis Z at right angles to the plane of the X and Y axes.

There are several known mathematical interpolation methods by which an equation, or a series of equations, can be obtained, which will closely approximate any desired curve. In the preferred mathematical method herein described, the equations of the curve itself are not computed or required. Instead, the mathematical theory of stress and strain is employed to compute selected parameters of a spline fit to the required curve, or a very close approximation to such spline fit.

The selected parameters are computed for successive pairs of points along the desired curve as given, or taken sufficiently close together to insure the required accuracy of approximation to the desired curve. The computation for each pair of points is based upon the relative locations of prior and subsequent points along the curve.

The equations which are herein developed and employed to give effect to the location of prior and subsequent points in determining the path to be followed between each successive pair of points, are based upon the use of two prior and two subsequent points. It is to be understood, however, that the mathematical method is equally applicable to single prior and subsequent points or to three or more prior and subsequent points, and that the invention is therefore not limited to any particular number of prior and subsequent points.

The selected parameters to be used are computed on a digital computer which may be of any suitable type, and which is not claimed as part of the invention. These parameters are recorded by the digital'computer in any convenient form, such as punched cards or punched paper tape.

The computed parameters are employed in a combination of electrical. electronic and mechanical components to be described to cause the cutter or other tool of a milling machine or the like to reproduce the desired curve upon any desired number of work pieces.

In the illustrative embodiments herein described, the X and Y components of the perpendicular distance from the chord between any two points to successive points on the interpolated curve are computed in analog form and added to the successive X and Y components of the chord, to guide the cutter or other tool along a path which will reproduce the interpolated curve.

For further details of the invention reference may be made to the drawings wherein FIGS. 1, 2, 3, 4a to 4e and FIG. 5 are schematic figures illustrating a curve and its components involved in mathematical equations given later in connection with computing the segment of the curve from certain parameters of the curve, FIGS. 4a to 46, being useful in connection with computing the starting and ending chord-to-tangent angles of the curve where the curve function is not known. FIG. 4a illustrates a spline fit through 6 points. FIGS. 4b to 4e illustrate the 3-point spline components of the curve in FIG. 4a.

FIG. 6a is a schematic diagram of a portion of the system in FIG. 17 illustrating a resolver with its inputs and outputs for computing the slope angle between the X axis and the tangent at the cutting point on the curve, FIG. 6b being the corresponding geometrical diagram.

FIG. 7a is a schematic diagram of another portion of the resolver referred to above, illustrating the inputs AX and nY for computing the chord length D, FIG. 7b being the corresponding geometrical diagram.

FIG. 8a is a schematic diagram of the resolver device of FIG. 12 illustrating the tool radius input to: be resolved into components along the X and Y axes, FIG. 8!) being the corresponding geometrical diagram.

FIG. 9 is a schematic diagram of the graphical representation of Equations 62 and 63.

FIG. 10 is a block diagram showing how FIGS. 11-16 are arranged for the complete schematic spline interpolator system of the present invention.

FIG. 17 is a schematic diagram of a portion of the present system showing details of the curve computer 406 of FIG. 12.

FIG. 20 is a block diagram showing how FIGS. 18, 19 and 21 fit together. FIGS. 18, 19 and 21 schematically show details of a typical digital-analog converter such as X, 413 in FIG. 11. FIG. 21 corresponds to block A, FIG. 19.

FIG. 22 is a diagram of the linear digital-to-analog converter and multiplier employed in the systems of FIGS. 11 to 16.

FIG. 23 is a graph illustrating the relation of the distance between data points to the departure of the generated curve from a circular arc.

The following is a list of the symbols used in this specification, with their definitions; as illustrated in FIGS. 1 to 9.

Xzlnstantaneous value of the abscissa of the cutter center along the machine X axis Yzlnstantaneous value of the ordinate of the cutter center along the machine Y axis X Abscissa along X axis of data point N Y ordinate along Y axis of data point N X Abscissa of the cutting point along X axis Y Ordinate of the cutting point along Y axis X :X component of cutter radius Y zY component of cutter radius AX=ditference between the abscissae of adjacent data points AY=diflerence between the ordinates of adjacent data points A X=X component of H (see H below) .a Y Y component of H (see H below) H depart ure of the curve from the chord D, measured perpendicular to D from the point P on the curve H' dcflection of a beam anchored at point 1 and bent to pass through point 2. (See FIG. 2.)

D:chord distance between adjacent data points C constant S=distance measured along the chord D R cutter radius a slope angle between the chord D and the X axis x angle between the chord and the tangent at the cutting point P t9:the angle between two successive chords =slope angle of the tangent at P ,tt the angle between the chord of a curve segment N, N-l-l and the tangent to the curve segment at N, or chord-to-tangent angle.

a =the angle between the chord of a curve segment N1, N and the tangent to the curve segment at K, or, chord-to-tangent angle.

tizpt as applied to Equations l and 2. (See FIG. 3.)

AAY:(tul1 MAX See FIG. 6.

SIGN CONVENTIONS The sign conventions employed in the following discussion are:

(l) Angles are positive when measured counter-clockwise.

(2) An angle between a chord and a tangent is measured from the chord to the tangent.

(3) An angle between two chords is measured from the extension of the first chord to the second chord.

(4) Distances along chord are taken as positive in the direction of motion. Distances normal to chords are taken as positive to the left of the direction of motion.

(5) Lengths of chords are taken as positive.

MATHEMATICS OF THE INTERPOLATION METHOD Consideration will now be given to the mathematics of the interpolation method, first for the general case where the equation of the curve is not known, and then for the case where the equation of the curve is given.

Equation of the curve not known.-The general case is the one in which the equation of the curve is not known. In this case, the digital computer computes the lengths D of the chords and the angles 9 from the values of X and Y between the chords. Using Equations 35, 36, 37 and 38 to find values of C and C it then computes the required values of the chord-to-tangent angles a and B from Equations 33 and 34. These equations are explained later.

Equations 1 and 2 are those of the required parameters of a close approximation to the curve which would be produced by a spline, or a uniform flexible strip which is caused to pass through the given points on the curve. The use of such a spline or strip is well known in the drafting and layout arts. The validity of the equations may be demonstrated in the following way: If a beam 1, 2 (FIG. 2), fixed at the point 2, is bent by a force normal to the beam at point 1 so that the beam after bending passes through the point 1, its behaviour may be analyzed in the following way: there is set up a bending moment which varies along the beam, its magnitude at any point P being proportional to the distance, S, from the point 1. This is a well-known principle, fundamental in the theory of stress and strain, and presented in any treatise on strength of materials. In FIG. 2, and, indeed, in the usual treatment of beams, it is considered immaterial to the discussion whether the distances involved are measured along the tangent 1, A, along the chord 1, 2 or along the bent beam 1, I, 2 itself, since the angle A, 1, 2 is considered to be so small that the relationship angle-sine-tangent is a very close approximation. In the operation of the invention herein described, it is necessary that the points along the curve to be out be taken sufiiciently close together that this relationship is true without sensible error. This is not a tight restriction since, for reasons of accuracy, points would normally be taken sufiiciently close together that this is the case.

The bending moment of the beam which is proportional in magnitude to the distance S along the beam (or along the tangent, or the chord), causes a change in the slope of the beam such that the rate of change of slope is proportional to said bending moment. From the principles of analytical geometry it is known that the slope of a curve H:f(S) is given by the first derivative of H with respect to S, and the rate of. change of slope is given by the second derivative of H with respect to S, or in common nomenclature, and with the notation of FIG. 2:

till j (S)-slopc (7) d ll FS =f (S) =rate of change (8) But it is known that the rate of change of slope is proportional to S, hence we may write (PH ES (u) and if a double integration is performed, there results the expression where C and C are constants of integration, C representing the initial slope and C the initial deflection of the beam. In the situation represented in FIG. 2, both are zero, hence H :kS (11) To determine the value of k, we note in FIG. 2 that, when S:D, then H'=D tan fi Dti by the small-angle approximation. Substituting these values in Equation 1 1 gives l I a H S D (13) We are interested, however, in the value of H, or departure of the curve from the chord. Referring to FIG. 2 and using the small-angle approximation:

and the slope of the curve with respect to the chord may be obtained by taking the derivative of (17) with respect to S, obtaining dH 3S d Stri11'l)\(1 D )6 Now, at the point (2), S D, and substitution in (18) gives dH ds where a is the chord-to-tangent angle at the point 2.

In the case of the present invention, the beam in question (the assumed spline) is not fixed at either end of a given chord, so that the above analysis is insufiicient to completely describe the case. The case may be described, however, to a close degree of approximation by considering a set of six (6) points of constraint, two to the left of and two to the right of the chord segment being con sidered. If this is done, the condition shown in FIGS. 40

to 42 exists, where the symbolism is consistent with that adopted in the above discussion.

In accordance with the principle of superposition, there is a unique set of four 3-point beams which determines the shape of the spline through six points. As will be explained in more detail presently, the chord-to-tangent angles a and B of the 3-point beams are proportional to the chord lengths, and depend in magnitude upon the angles 9 between successive chords, since, at each point, the sum of the or components plus the sum of the 5 components is equal to the chord-to-chord angle 0. (See Equation 28.) The sum of a and B at the center of each 3- point is an angle 0', which in general is not equal to 0, and need not be determined.

FIGS. 4b to 4e shows the component 3-point splines used to compute the 6-point spline 4a. The curvature is zero at the end points of the four 3-point beams. Hence, at either side of the midpoint of each 3-point beam, the chord-to-tangent angle is twice that the end of the beam, but is of opposite sign. (See Equation 19.)

The actual values of the chord-to-tangent angles at the chord ends are the algebraic sums of the component values illustrated in FIGS. 41) to 4e, that is to say fln=fiw+fiewn=m+m From the theory of beam fiexure, it may be shown that m 2s1a BhN ims-l1 and in particular, for a chord 3, 4; we have fills 34 This may be written 1 2: DZ-ECH Bria 3,-iC:i (23) where C is a proportionality constant. It 0: is proportional to D as indicated in Equation 23, then it can be stated that a D c and the equations for the component angles are as follows:

n3 2,a 3 l ba= 3,4 s a4 a,4 4 l b2 2,a 2

And, substituting in 28 from Equations 24, 25, 26, 27, 29 and 30 we obtain Similarly, for the angle between the chords at the point 4 

